package com.vogue.supplymall.admin.business.domain.biz;

import com.vogue.supplymall.account.domain.model.AdminUser;
import com.vogue.supplymall.common.domain.dto.admin.OrganManagementInfo;

import java.util.List;
import java.util.Map;

/**
 * The interface Organ management biz.
 *
 * @author zhangliang
 * Create in 2018-06-08
 */
public interface OrganManagementBiz {

    /**
     * Gets organ list.
     *
     * @param managementInfo the management info
     * @return the organ list
     */
    Map<String, Object> getOrganList(OrganManagementInfo managementInfo);

    /**
     * Do on off organ.
     *
     * @param managementInfo the management info
     */
    void doOnOffOrgan(OrganManagementInfo managementInfo);

    /**
     * Instantiates a new Search account book.
     * 查询集团账本信息
     *
     * @param organid the organid
     * @return the list
     */
    List<Map<String, Object>> searchAccountBook(Long organid);

    /**
     * Do organ recharge.
     * 充值
     *
     * @param managementInfo the management info
     * @param info           the info
     */
    void doOrganRecharge(OrganManagementInfo managementInfo, AdminUser info);

    /**
     * Search consume config list.
     * 检索消费配置信息
     *
     * @param managementInfo the management info
     * @return the list
     */
    Map<String, Object> searchConsumeConfig(OrganManagementInfo managementInfo);

    /**
     * Update consume config.
     * 改配--提交
     *
     * @param info     the info
     * @param userInfo the user info
     */
    void updateConsumeConfig(OrganManagementInfo info, AdminUser userInfo);
}
